package blbetter.netze;

import neuralNetworks.Functions;
import blbetter.db.BLDataBase;
import blbetter.db.Spiel;

public class BlBetterNetV1 extends BlBetterNet {

	private static final long serialVersionUID = 2217325668658290059L;

	private int X;

	public BlBetterNetV1(int X, int[] hiddenNeurons, Functions actF, double lr) {
		super(hiddenNeurons, actF, lr);
		this.X = X;
	}

	@Override
	protected int getAnzInputNeurons() {
		// input infos
		// punktedurchs. differenz der letzten X Spiele der teams (0-3)-> 1
		// neuron
		// durchs. geschoss. Tore letzte X Spiele (beide Teams)(0-3)-> 2*1=2
		// neuronen
		// tordurchs. gekriegt. Tore letzte X Spiele (beide Teams)(0-3)-> 2*1=2
		// neuronen
		// spieltag (19-34) -> 4 neuronen
		// tabellenplaetze (1-18) -> 2*1=2 neuronen
		// -----------------------
		// insgesamt: 11 neuronen
		return 11;
	}

	// gibt wahrscheinlichkeit von weniger als 3.5 toren an
	public double run(BlBetterInputSitV1 inputSit) {
		return super.run(inputSit);
	}

	@Override
	public BlBetterInputSit getInputSit(Spiel spiel, BLDataBase db) {
		return new BlBetterInputSitV1(spiel, X, db);
	}

}
